package itheima.com.zuoye.zy1;

import java.util.*;
import java.util.stream.Collectors;

public class Test {
    public static void main(String[] args) {
        LinkedHashMap<String, String> map1 = new LinkedHashMap<>();
        map1.put("《肖生克的救赎》", "9.7");
        map1.put("《霸王别姬》", "9.6");
        map1.put("《阿甘正传》", "9.6");
        map1.put("《辛德勒的名单》", "9.6");
        map1.put("《美丽人生》", "9.5");
        map1.put("《千与千寻》", "9.4");
        map1.put("《泰坦尼克号》", "9.4");
        map1.put("《这个杀手不太冷》", "9.4");
        map1.put("《忠犬八公的故事》", "9.4");
        map1.put("《盗梦空间》", "9.3");
        LinkedHashMap<String, String> map2 = new LinkedHashMap<>();
//        第1名：《阳光普照》，豆瓣评分：8.5
        map2.put("《阳光普照》", "8.5");
//　　第2名：《气球》豆瓣评分：7.9
        map2.put("《气球》", "7.9");
//　　第3名：《拆弹专家2》，豆瓣评分：7.9
        map2.put("《拆弹专家2》", "7.9");
//　　第4名：《一秒钟》，豆瓣评分：7.8
        map2.put("《一秒钟》", "7.8");
//　　第5名：《送你一朵小红花》豆瓣评分：7.5
        map2.put("《送你一朵小红花》", "7.5");
//　　第6名：《金都》，豆瓣评分：7.7
        map2.put("《金都》", "7.7");
//　　第7名：《叔叔》，豆瓣评分：7.7
        map2.put("《叔叔》", "7.7");
//　　第8名：《八佰》，豆瓣评分：7.6
        map2.put("《八佰》", "7.6");
//　　第9名：《夺冠》，豆瓣评分：7.3
        map2.put("《夺冠》", "7.3");
//　　第10名：《我和我的家乡》，豆瓣评分：7.3
        map2.put("《我和我的家乡》", "7.3");
//        打印全球影片排行榜中的前三甲影片名
        map1.entrySet().stream()
                .limit(3)
                .forEach(System.out::println);
//        打印华人影片排行榜中倒数5名的影片名
        System.out.println("=====================");
        map2.entrySet().stream()
                .skip(map2.size()-5)
                .forEach(System.out::println);
        System.out.println("=====================");
//        将两个排行榜中的前5名挑出来共同存入新的集合
        List<Map.Entry<String, String>> list = new ArrayList<>();
       ArrayList list1 = new ArrayList();
        list.addAll(
                map1.entrySet().stream()
                        .limit(5)
                        .collect(Collectors.toList())
        );
        list.addAll(
                map2.entrySet().stream()
                        .limit(5)
                        .collect(Collectors.toList())
        );
        System.out.println("=====================");
//        定义电影Film类(属性：电影名，评分)，将上面新集合中的数据，封装到Film对象中。
        List<Film> films = list.stream()
                .map(e -> new Film(e.getKey(),Double.parseDouble(e.getValue()) ))
                .collect(Collectors.toList());
        films.forEach(System.out::println);



    }
}
